package com.ruoyi.wsc.api.domain;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 商户对象 merchant
 * 
 * @author ruoyi
 * @date 2025-05-09
 */

public class Merchant extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 店铺名 */
    @Excel(name = "店铺名")
    private String name;

    /** 经营区域 */
    @Excel(name = "经营区域")
    private String operatingArea;

    /** 注册时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "注册时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date regTime;

    /** 开始营业时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始营业时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /** 停止营业时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "停止营业时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTime;

    /** 详细地址 */
    @Excel(name = "详细地址")
    private String address;

    /** 经度 */
    @Excel(name = "经度")
    private String longitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private String latitude;

    /** 商家介绍 */
    @Excel(name = "商家介绍")
    private String description;

    /** 商家评分 */
    @Excel(name = "商家评分")
    private Long rate;

    /** 经营状态（0正常、1休息） */
    @Excel(name = "经营状态", readConverterExp = "0=正常、1休息")
    private Long status;

    /** 删除状态（默认0，逻辑删除为1） */
    @Excel(name = "删除状态", readConverterExp = "默=认0，逻辑删除为1")

    private Long del;

    /** 审核状态(0待审核、1已审核、2已拒绝) */
    @Excel(name = "审核状态(0待审核、1已审核、2已拒绝)")
    private Long auditStatusId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }

    public void setOperatingArea(String operatingArea) 
    {
        this.operatingArea = operatingArea;
    }

    public String getOperatingArea() 
    {
        return operatingArea;
    }

    public void setRegTime(Date regTime) 
    {
        this.regTime = regTime;
    }

    public Date getRegTime() 
    {
        return regTime;
    }

    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }

    public void setEndTime(Date endTime) 
    {
        this.endTime = endTime;
    }

    public Date getEndTime() 
    {
        return endTime;
    }

    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }

    public void setLongitude(String longitude) 
    {
        this.longitude = longitude;
    }

    public String getLongitude() 
    {
        return longitude;
    }

    public void setLatitude(String latitude) 
    {
        this.latitude = latitude;
    }

    public String getLatitude() 
    {
        return latitude;
    }

    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }

    public void setRate(Long rate) 
    {
        this.rate = rate;
    }

    public Long getRate() 
    {
        return rate;
    }

    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    public void setDel(Long del) 
    {
        this.del = del;
    }

    public Long getDel() 
    {
        return del;
    }

    public void setAuditStatusId(Long auditStatusId) 
    {
        this.auditStatusId = auditStatusId;
    }

    public Long getAuditStatusId() 
    {
        return auditStatusId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("operatingArea", getOperatingArea())
            .append("regTime", getRegTime())
            .append("startTime", getStartTime())
            .append("endTime", getEndTime())
            .append("address", getAddress())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("description", getDescription())
            .append("rate", getRate())
            .append("status", getStatus())
            .append("del", getDel())
            .append("auditStatusId", getAuditStatusId())
            .toString();
    }
}
